package com.bym.mall.service;

import com.bym.mall.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.bym.mall.vo.ResponseVo;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author bym
 * @since 2022-03-22
 */
public interface IUserService extends IService<User> {

    /**
     * 注册
     *
     * @param user 用户
     */
    ResponseVo register(User user);


    /**
     * 登录
     *
     * @param username 用户名
     * @param password 密码
     * @return {@link ResponseVo}<{@link User}>
     */
    ResponseVo loginByPwd(String username, String password);

    /**
     * 使用手机号和验证码登录
     *
     * @param phone 电话
     * @return {@link ResponseVo}<{@link User}>
     */
    ResponseVo loginByPhoneAndCode(String phone, String code);

    /**
     * 获取登录验证码
     *
     * @param phone 电话
     * @return {@link ResponseVo}<{@link String}>
     */
    ResponseVo getCode(String phone);

    /**
     * 注销
     *
     * @return {@link ResponseVo}
     */
    ResponseVo logout();
}
